package com.itheima.project;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;

/**
 * @Description：返回逻辑视图名
 */
@Controller
@RequestMapping("string-type")
public class StringTypeController {

    /**
     * @Description 此时返回的不是一个字符串，而是一个逻辑视图名
     */
    @RequestMapping("default-method")
    public String defaultMethod(Model model){
        //内置对象传递参数
        model.addAttribute("content", "ModelAndViewType");
        //跳转页面
        return "succeed";
    }

    /**
     * @Description 如果返回forward:+内部请求路径则执行转发操作
     * 格式：forward:+内部请求路径(/类上路径+/方法路径)
     * 细节：类路径前面要加/,本类请求方法路径可以不加
     */
    @RequestMapping("string-type-forward")
    public String forward(){
        return "forward:default-method";
    }

    /**
     * @Description 如果返回redirect:+请求路径则执行重定向操作
     * 格式：redirect:+请求路径（可以是外部系统的）
     * 细节：跳转外部地址的时候http://不可以省略，如果省略他会当做本类方法请求路径进行处理
     */
    @RequestMapping(value = "redirect")
    public String redirect(){
        return "redirect:http://www.baidu.com";
    }
}
